package io.geekidea.boot.outbound.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.geekidea.boot.common.BaseEntity;
import io.geekidea.boot.system.entity.SysUser;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;


/**
 * 战区实体类（tb_area）
 */

@Data
@TableName("tb_outbound")
public class Outbound extends BaseEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    @TableId(value = "id",type = IdType.AUTO)
    private Integer id;
    //出库单号
    @TableField("outbound")
    private String outbound;
    //出库类型(订单出库 ， 调拨出库，出库单)
    @TableField("type")
    private String type;
    //出库行为（关联出库行为表）
    @TableField("behaviorId")
    private String behaviorId;
    @TableField(exist = false)
    private  String outbeh;
    //出库时间
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8",shape = JsonFormat.Shape.STRING)
    @TableField("outboundTime")
    private LocalDateTime outboundTime;
    //关联单号
    @TableField("ciationNumbers")
    private String ciationNumbers;
    //制单人
    @TableField("creatorUser")
    private String creatorUser;
    //审核人
    @TableField("examineUser")
    private String examineUser;
    @TableField("examineContent")
    private String examineContent;
    //战区（关联战区表）
    @TableField("areaId")
    private Integer areaId;
    //门店（关联门店表）
    @TableField("storesId")
    private Integer storesId;
    @TableField(exist = false)
    private String storeName;
    @TableField(exist = false)
    private String areaName;
    //凭证
    @TableField("examineUser")
    private String  evidence_url;
    //物料行数（种类数）
    @TableField("materialTypeNum")
    private Integer materialTypeNum;
    //物料数量（合计）
    @TableField("materialNum")
    private Integer materialNum;
    //总金额
    @TableField("money")
    private Double money;
    //出库状态  （0：待审核   1：驳回修改  2：已完成 ）
    @TableField("status")
    private String status;
    //供应商(关联供应商表)
    @TableField("supplierId")
    private Integer supplierId;
    //物料详情
    @TableField("materialDetails")
    private String materialDetails;

    @TableField(exist = false)
    private String supplierName;

    @TableField(exist = false)
    private  String typeName;

    @TableField(exist = false)
    private String outTypeName;
    @TableField(exist = false)
    private String storesName;




}
